let mySymbol = (function () {
    let cache = new Map();
    function fn() {
        if(this instanceof fn){
            throw new Error("不可以new")
        }
        return {}
    }
    fn.for = function (key) {
        if(!cache.has(key)){
            cache.set(key,{})
        }
        return cache.get(key)
    }

    fn.keyof = function (val) {
        for(let [k,v] in this.cache){
            if(v == val){
                return k
            }
        }
    }

    return fn
})()